Conventional software utilities, such as the commonly used ping and traceroute utilities, are useful tools for identifying failed connectivity between two nodes of a network. These tools typically require a user to enter a unique identifier, such as a particular internet protocol (IP) address, of a remote host in order to test the connectivity to that remote host. For example, the ping protocol tests connectivity to a remote host by sending an Internet Control Message Protocol (ICMP) echo request packet to a specific IP address to test the status of connectivity to a particular target device having the IP address. If an echo reply packet is not received within a defined time period, connectivity to that device is assumed to be down.
Similarly, the traceroute protocol requires an IP address for a target device in order to test connectivity from the source device to that target device. The traceroute utility tests connectivity to the remote target device by tracing an ICMP echo request packet's path from the source device to the particular IP address specified by the user. As output, the traceroute typically shows how many hops the packet traveled to reach the IP address, identifies each hop by its IP address, and shows how long each hop took.
If the target device incorporates multiple network interfaces and those separate IP addresses have been assigned to the interfaces, then a network administrator may test the connectivity from a source device to a particular one of the interfaces using the conventional software utilities. For example, by inputting the IP address of the particular interface of interest, an administrator may direct ping or traceroute to that interface of the target device. This may be useful in many scenarios, such as when multiple paths exist between the source device and target device.
However, assignment of external, known IP addresses to each individual network interface may be undesirable for many reasons. For example, assigning known IP addresses to each individual interface exposes the device to interface-specific network attacks, such as packet-flooding of a particular interface. Furthermore, assigning and managing individual IP addresses for each interface of each network device within a network may increase operational expenses.
For these reasons, network administrators may elect to forego assignment of an individual publicly known identifier, such as an IP address, to each network interface. From an external view, each interface is, in effect, an unnumbered network interface. Although this approach avoids the security risks and operational expenses associated with assignment of IP address to each interface, the network administrators are unable to use conventional connectivity testing utilities, such as ping and traceroute, to test the connectivity on an interface-by-interface basis.